草庐IT

php - preg_match 在第二个斜杠后向后看

全部标签

ruby-on-rails - Ruby 相当于 PHP 的 ucfirst() 函数

在Ruby中(使用Rails,如果相关)将字符串首字母大写的最佳方法是什么?请注意String#capitalize不是我想要的,因为除了将字符串的首字母大写外,此函数还使所有其他字符变为小写(这是我不想要的——我想让它们保持原样):>>"aA".capitalize=>"Aa" 最佳答案 在Rails中你有String#titleize方法:"测试字符串标题化方法".titleize#=>"测试字符串标题化方法" 关于ruby-on-rails-Ruby相当于PHP的ucfirst()

ruby-on-rails - rails 引擎 : rake routes show its routes but on rspec execution "No route matches" is thrown

我正在尝试测试我的应用程序正在使用的引擎内部的Controller。规范不在引擎中,而是在应用程序本身中(我试图在引擎中进行测试,但也遇到了问题)。我的引擎有以下routes.rb:Revision::Engine.routes.drawdoresources:steps,only:[]docollection{get:first}endend引擎正常挂载在应用routes.rb上:mountRevision::Engine=>"revision"当我运行rakeroutes时,在最后一行我得到:RoutesforRevision::Engine:first_stepsGET/step

ruby - 安装 RDoc 文档时出错 : incompatible encoding regexp match

上周,在一些gem安装或gem更新操作中,我收到了与这些类似的错误:ERROR:Whilegeneratingdocumentationforsinatra-1.3.1...MESSAGE:errorgeneratingC:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/doc/sinatra-1.3.1/rdoc/README_de_rdoc.html:incompatibleencodingregexpmatch(UTF-8regexpwithIBM437string)(Encoding::CompatibilityError)类似的:E

ruby - 如何从 JSON 字符串中删除反斜杠?

我有一个如下所示的JSON字符串'{\"test\":{\"test1\":{\"test1\":[{\"test2\":\"1\",\"test3\":\"foo\",\"test4\":\"bar\",\"test5\":\"test7\"}]}}}'我需要使用Ruby或Rails将其更改为以下内容:'{"test":{"test1":{"test1":[{"test2":"1","test3":"foo","test4":"bar","test5":"bar2"}]}}}'我需要知道如何删除那些斜杠。 最佳答案 要避免在控制台

ruby 正则表达式 : ^ matches start of line even without m modifier?

ruby1.8.7。我正在使用带有^的正则表达式来匹配字符串开头的模式。问题是,如果在字符串中任何行的开头找到模式,它仍然匹配。如果我使用“m”修饰符但我没有使用,这是我期望的行为:$irbirb(main):001:0>str="hello\ngoodbye"=>"hello\ngoodbye"irb(main):002:0>putsstrhellogoodbye=>nilirb(main):004:0>str=~/^goodbye/=>6我在这里做错了什么? 最佳答案 行首:^行尾:$字符串的开头:\A字符串结尾:\z

ruby - || 是否即使第一个参数为真,运算符也会评估第二个参数?

我正在尝试计算表达式(a=10)||(rr=20)未定义rr变量因此在评估前一个表达式返回之前在ruby​​控制台中键入rrrrNameError:undefinedlocalvariableormethod`rr'formain:Objectfrom(irb):1from:0当我编写表达式(a=10)||(rr=20)它返回10,然后当我写rr时它说nil(a=10)||(rr=20)rr#=>nil那么,为什么会这样呢?仅当||的第二个参数时,不应定义rr运算符被评估,这不应该基于文档? 最佳答案 发生这种情况是因为ruby​​

ruby - 模式匹配时 =~ 和 match() 有什么区别?

我正在使用Ruby1.9.3。我在玩一些模式,发现了一些有趣的东西:示例1:irb(main):001:0>/hay/=~'haystack'=>0irb(main):003:0>/st/=~'haystack'=>3示例2:irb(main):002:0>/hay/.match('haystack')=>#irb(main):004:0>/st/.match('haystack')=>#=~返回其第一个匹配项的第一个位置,而match返回模式。除此之外,=~和match()还有什么区别吗?执行时间差(根据@Casper)irb(main):005:0>quickbm(10000000

ruby-on-rails - Ruby:如何从字符串中删除尾随反斜杠?

我有一个字符串"car\"我将把它存储在postgres数据库中。我想在保存之前从字符串中删除反斜杠。有没有办法在ruby​​或postgres中做到这一点?当我尝试在ruby​​中删除它时,它会将反斜杠后的引号视为转义字符。 最佳答案 见以下代码:1.9.3p125:022>s="cat\\"=>"cat\\"1.9.3p125:023>putsscat\=>nil1.9.3p125:024>s.chomp("\\")=>"cat"1.9.3p125:025> 关于ruby-on-ra

ruby-on-rails - 在 Rails 3 中使用 current_page 时为 "No routes matches"

有没有人遇到过使用current_page时路由神秘地变得无法检测到?在Rails3中?即使使用包含路由、View和Controller的完全生成的脚手架,我也会收到“无路由匹配”错误。代码如下:ifcurrent_page?(:controller=>'users',:action=>"show")如果我向routes.rb添加一个“匹配”命令,它工作正常,但如果资源已经创建,为什么我需要这样做呢?我错过了什么? 最佳答案 如果你只是想测试当前的Controller,你可以这样做:ifparams[:controller]=='u

ruby-on-rails - 验证失败 : Upload file has an extension that does not match its contents

我正在使用回形针gem上传文件。我的回形针gem版本是paperclip-4.1.1。上传文件时抛出Validationfailed:Uploadfilehasanextensionthatdoesnotmatchitscontents.我正在尝试上传xlsx文件。而且我已经在模型content_type中提到了这一点。validates_attachment_content_type:upload_file,:content_type=>%w(application/mswordapplication/vnd.ms-officeapplication/vnd.ms-excelappl